A MRAM is a non-volatile memory capable of a write/read operation at a high speed, and the research and development towards practical use has been carried out in recent years.
Generally, in the MRAM, a magneto-resistance element is used for a memory cell. The magneto-resistance element is composed of a magnetization free layer whose magnetization can be reversed, a magnetization pinned layer whose magnetization is pinned, and a non-magnetic layer formed between them. A data is stored as an orientation of the magnetization in the magnetization free layer. When the non-magnetic layer is formed from a very thin insulating film, the magneto-resistance element exhibits a TMR (Tunnel Magneto-Resistance) effect. The magneto-resistance element having such configuration is often referred to as an MTJ (Magnetic Tunnel Junction) element. On the other hand, when the non-magnetic layer is formed of a non-magnetic conductor, the magneto-resistance element exhibits a GMR (Giant Magneto-Resistive) effect. The magneto-resistance element having such configuration is referred to as a CPP-GMR (Current Perpendicular to Plane Giant Magneto-Resistive) element.
The write operation of the data is generally carried out by supplying write currents to a word line and a bit line, which are laid near a memory cell, to apply a magnetic field to the magnetization free layer, and reversing the magnetization of the magnetization free layer to a desirable direction.
On the other hand, when the data is read, the magneto-resistance effect exhibited by the magneto-resistance element is used. When any of the TMR effect and the GMR effect is used, the resistance of the memory cell varies on the basis of the magnetization orientation of the magnetization free layer. This change in the resistance of the memory cell appears as the change in a current flowing through the memory cell or the change in a voltage drop generated in the memory cell. This change in the current flowing through the memory cell or the voltage drop generated in the memory cell is detected, to discriminate the data of the memory cell.
When the data of the memory cell is determined, a reference cell in which a predetermined data is written is used. Hereinafter, in order to discriminate the reference cell, there is a case that the cell actually used to store the data is referred to as a data cell of the memory cells. In the MRAM in which the reference cell is provided, the determination of the data in the data cell is carried out by using the reference cell to generate a reference signal and then comparing a data signal obtained from the data cell with the reference signal.
As known in one skilled in the art, one subject of the MRAM lies in the selection property of the memory cell in a write operation. In the traditional MRAM, due to the variation in property of the memory cell, the data is written into half-selection memory cells, namely, the memory cells in which a write current is supplied to only one of the word line and the bit line. This undesirably reduces the reliability in the operation of the MRAM.
One method to improve the selection property in the write operation of the MRAM is a toggle write scheme (refer to U.S. Pat. No. 6,545,906). The toggle write scheme is a technique for carrying out the write operation whose selection property is high, by using SAF (Synthetic Anti-Ferro-Magnet) in the magnetization free layer. Here, the SAF is a structure in which the adjacent ferromagnetic layers composed of a plurality of ferromagnetic layers are magnetically coupled in anti-ferromagnetic manner.
FIG. 1 is a plan view showing a typical configuration of the MRAM employing the toggle write method. Bit lines 102 and word lines 103 orthogonal to the bit lines 102 extend in a memory array in the MRAM. A magneto-resistance element 101 used as the memory cell is provided at each of positions at which the bit lines 102 and the word lines 103 intersect. As shown in FIG. 2, the magneto-resistance element 101 is composed of a magneto-resistance element, which contains an anti-ferromagnetic layer 111, a magnetization pinned layer 112, a barrier layer 113 and a magnetization free layer 114. As shown in FIG. 1, the magneto-resistance element 101 is arranged such that easy axes of the magnetization pinned layer 112 and the magnetization free layer 114 have the angles of 45 degrees with respect to the bit line 102 and the word line 103, namely, the longitudinal direction of the magneto-resistance element 101 has the angle of 45 degrees with respect to the bit line 102 and the word line 103.
Again, with reference to FIG. 2, the magnetization free layer 114 is composed of ferromagnetic layers 121 and 122 and a non-magnetic layer 123 formed between them. The entire residual magnetization of the magnetization free layer 114 (namely, the entire magnetization of the magnetization free layer 114 when an external magnetic field is 0) is made as close to 0 as possible. This is important, in order to generate a spin flop in the SAF. This condition can be satisfied, for example, by forming the two ferromagnetic layers 121 and 122 so that they are made of the same materials and have the same film thickness.
FIG. 3 is conceptual views showing a procedure of the toggle write operation. FIG. 4 is a diagram showing the waveforms of the currents, which are supplied through the bit line 102 and the word line 103 when the data write operation is carried out based on the toggle write operation. In FIG. 3, attention should be paid to the fact that the magnetizations of the ferromagnetic layers 121 and 122 in the magnetization free layer 114 are indicated by symbols M1, M2, respectively.
The data write operation based on the toggle write method is carried out such that the direction of the magnetic field applied to the magnetization free layer 114 is rotated inside a plane and then the magnetizations of the ferromagnetic layers 121 and 122 of the magnetization free layer 114 are inverted by this magnetic field. Specifically, the write current is firstly supplied to the word line 103. Thus, a magnetic field HWL is generated in a direction orthogonal to the word line 103 (time t1). Subsequently, while the write current is supplied through the word line 103, a write current is supplied to the bit line 102 (time t2). Thus, a magnetic field HWL+HBL is generated in the direction having the angle of 45 degrees with respect for both of the word line 103 and the bit line 102. Moreover, while a write current is supplied through the bit line 102, the supply of the write current to the word line 103 is stopped (time t3). Therefore, a magnetic field HBL is generated in the direction orthogonal to the bit line 102 (namely, the direction parallel to the word line 103). Since with such a procedure, the write currents are supplied to the word line 103 and the bit line 102, the magnetic field applied to the magnetization free layer 114 is rotated, which can rotate the magnetizations of the ferromagnetic layers 121 and 122 of the magnetization free layer 114 by 180 degrees.
The remarkable fact lies in the fact that in the data write operation based on the toggle write method, only the reversal of the magnetization can be carried out, namely, only the reversal of the data can be carried out. For example, when a data “0” is written to a certain target memory cell, the data is firstly read from the target memory cell. Only when the read data is “1”, the toggle write is carried out on the target memory cell, and the data “0” is stored in the target memory cell. If the read data is “0”, the write operation into the target memory cell is not carried out.
In the foregoing toggle write, even when the write current is supplied to only one of the word line 103 and the bit line 102, the magnetization of the SAF is not reversed in principle. As shown in a graph of FIG. 5 that indicates a region in which the magnetization of the SAF is reversed by the magnetic field generated by the write currents supplied to the bit line and the word line, when the toggle write is employed, the magnetizations of the half-selection memory cells where the write current is supplied through only one of the corresponding word line 103 and bit line 102 are not undesirably reversed in principle. This effectively improves the selection property of the memory cell of the MRAM.
However, even in the MRAM employing the toggle write, it is actually difficult to perfectly prevent a write error. Even if the corresponding write current is supplied to the region shown in FIG. 5, there is a possibility that the magnetization is not reversed, although its probability is very low.
In addition, even in the MRAM employing the toggle write, it is inevitable to avoid software error caused due to thermal disturbance, namely, the undesirable reversal of the magnetization caused due to the thermal disturbance in a probability. The SAF is surely excellent in the durability against the thermal disturbance because its volume can be increased while the entire magnetization is kept small. However, although the probability is very low, it is inevitable to avoid the undesirable reversal of the magnetization caused by the thermal disturbance.
In order to deal with the generation of the write error and software error as mentioned above, similarly to other many memory devices, an error correction is desired to be employed even in the MRAM. For example, as disclosed in Japanese Patent Application Publications (JP-P2003-68096A, JP-P2003-115195A, JP-P2003-115197A, JP-P2005-56556A and JP-P2005-85464A), in the MRAM employing the error correction, an error correction encoding is carried out on a write data when the data is written, and the data after the error correction encoding is written to the memory array. When the data is read, a syndrome is calculated from the data read out from the memory array. When a data error is detected, the data after the error correction is outputted to outside. At this time, the data stored in the memory array is simultaneously corrected.
However, the MRAM employing the toggle write has two matters to be considered when ECC is employed. One is that, even when a data error is detected, whether a cause of the error is in the data cell or the reference cell is not known. There is a case that the thermal disturbance causes the data written in the reference cell to be undesirably reversed although its probability is low. Thus, even if the data error is detected, there is a fear that the simple correction of the data stored in the data cell results in erroneous correction of the data.
However, whether a cause of an error is in the data cell or the reference cell cannot be determined basically and perfectly. Certainly, there may be a difference in an erroneous pattern between the case that the error is in the data cell and the case that the error is in the reference cell. For example, in the case that the error is in the reference cell, a burst error is easily generated, and in the case that the error is in the data cell, a single bit error is easily generated. However, even in the case that the error is in the reference cell, it may appear as the single bit error, depending on the property of the reference cell.
The other matter to be considered lies in that in the toggle write, only the data of the memory cell can be reversed as mentioned above. This has severe influence on the correction of the reference cell. In the write method that can write a specified data, if the desirable data is written into the reference cell and then read out from it, the correction of the reference cell is not originally required. However, when such a method is employed in the toggle write, the read operation from the reference cell is required, which leads to the increase in a read cycle time. Thus, this is not preferable.
In view of such backgrounds, an error correcting technique that is optimal for the MRAM employing the toggle write is desired to be provided.